﻿//=====================================================================================================
// LocalizationLibrary
// The Localization Library is a collection of reusable software components that provide 
// support for localization. This library enables you to localize WPF, Silverlight and WP7 applications.
// (http://localizationlibrary.codeplex.com)
//=====================================================================================================
// Author: Nicola Gallo (Website: www.nicola.gallo.name, Email: nicolagmt@hotmail.it) 
//=====================================================================================================

namespace HelloWorld.Startup.LocalizationModels
{
    //.NET References
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Windows;

    // Microsoft References
    using System.ComponentModel.Composition;

    //LocalizationLibrary References
    using LocalizationLibrary;
    using LocalizationLibrary.Attributes;

    //HelloWorld References
    using HelloWorld.Startup.Constants;

    /// <summary>
    /// Defines the menu's <see cref="LocalizationModel"/>.
    /// </summary>
    [Export("MenuComposition", typeof(ILocalizationModel))]
    public class MenuLm : LocalizationModel
    {
        //Properties

        /// <summary>
        /// Gets/Sets localization for the resource with ResourceID equals to <see cref="LocalizationKey.DynamicLocalization"/>.
        /// </summary>
        [LocalizeDynamically(LocalizationKey.DynamicLocalization)]
        [LocalizeDynamically(Language = "en", Value = "Dynamic localization", Policy = VersionConflictPolicy.OverrideExisting)]
        public String DynamicLocalization { get; set; }

        /// <summary>
        /// Gets/Sets localization for the resource with ResourceID equals to <see cref="LocalizationKey.StaticLocalization"/>.
        /// </summary>
        [LocalizeDynamically(LocalizationKey.StaticLocalization)]
        [LocalizeDynamically(Language = "en", Value = "Static localization", Policy = VersionConflictPolicy.OverrideExisting)]
        public String StaticLocalization { get; set; }
    }
}
